Elixir 開發者比較常用 asdf-vm 這套版本管理工具來管理 elixir 版本,畢竟多人用,所以比較不會遇到雷,在這篇的終端機指令主要是 bash(zsh),所以可以直接在 mac 或 ubuntu 的終端機執行,使用 Windows 的朋友我建議使用微軟推出的 ubuntu 子系統,(設定 WSL 開發環境)。
給對終端機指令沒有信心的朋友:
這些終端機工具,儘管執行的時候都會一直印出現在還看不太懂的指令,但現在大部分的工具都很貼心的會在結尾列出錯誤的部分,或是下一個步驟要做什麼,噴出紅字的錯誤先冷靜地讀一下錯誤訊息,通常上面都會直接列出解法。
可以統一管理各種語言版本的小道具,我們這次需要安裝的語言有 Elixir 以及 Erlang,asdf 的使用概念是,安裝語言的套件,然後安裝語言的版本。我們一步一步來。
下載 asdf 到 ~/.asdf
資料夾
(閱讀時版本可能與我寫的時候不同,複製官方頁面的指令為主)
git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.2
Mac 用戶可以用 homebrew 安裝
brew install asdf
依照 shell 環境與安裝方法不同,有不同的指令可以執行
指令列表
這邊列出常用的兩種
用 VScode 編輯 ~/.bashrc
code ~/.bashrc
並在檔案的最後加上,並存檔關閉
. $HOME/.asdf/asdf.sh
. $HOME/.asdf/completions/asdf.bash
echo -e "\n. $(brew --prefix asdf)/libexec/asdf.sh" >> ${ZDOTDIR:-~}/.zshrc
重開一次終端機,執行看看 asdf --version
有沒有安裝好了
確定有 asdf 可以執行後,我們就可以安裝我們需要的語言了
幫 asdf 安裝 Erlang plugin
asdf plugin add erlang
直接安裝最新的 Erlang
asdf install erlang latest
安裝 Erlang 的過程會比較久,如果有遇到錯誤,別慌張,慢慢讀一下錯誤訊息,通常他都是在抱怨缺少那些東西害他不能裝好,
asdf-erlang 的 github Readme 頁面有更詳細的安裝指引
完成之後讓 asdf 使用我們剛剛裝的版本
asdf global erlang latest
可以試著呼叫 erl
來看看有沒有裝好,裝好的話會進入 erlang 的互動介面,按兩次 control + c
可以離開。
安裝的步驟跟剛剛類似,都是先安裝 asdf 的 Elixir plugin,再安裝 Elixir 版本,
Elixir 本身不需要額外的東西,所以通常會很順。
幫 asdf 安裝 Elixir plugin
asdf plugin add elixir
安裝最新的 Elixir
asdf install elixir latest
完成後一樣讓 asdf 使用我們剛剛裝好的 elixir 版本
asdf global elixir latest
最後來看看有沒有裝好
elixir -v
應該會回傳 elixir 以及他使用的 erlang OTP 版本
也可以用 iex
進入 elixir 的互動介面來看看,一樣是兩次 control + c
可以離開
別怕,剛開始都這樣
安裝這些對剛入門還不熟悉相關工具的情況,真的很麻煩也很多問題,如果有在哪一個步驟卡住的,非常歡迎留言,你卡住,別人八成也有卡,讓我們一起解決。
我們打開 elixir 的互動介面 iex
iex
這時候我們每輸入一行按 enter 後,他就會直接回傳該行的結果
試著輸入
"Hello World"
3 + 3
8 * 10000
要結束一樣是 control + c
兩次
額外的小知識
Q: 為什麼要裝 Erlang 呢?我是學 Elixir 耶。
A: Elixir 的程式碼會跑在 Erlang 虛擬機上(BEAM VM),所以開發的時候我們兩個都要裝。